/**
 * @license Copyright 2018 Günter Fuchs (gfuchs@acousticmicroscopy.com)
 * <p>
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * <p>
 * http://www.apache.org/licenses/LICENSE-2.0
 * <p>
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * <p>
 * Modifications by Peter Froud, June 2018
 */
package xyz.froud.jvisa;

import com.sun.jna.Library;
import com.sun.jna.NativeLong;
import com.sun.jna.Pointer;
import com.sun.jna.PointerType;
import com.sun.jna.ptr.NativeLongByReference;
import com.sun.jna.ptr.PointerByReference;
import xyz.froud.jvisa.eventhandling.JVisaEventCallback;

import java.nio.ByteBuffer;
import java.nio.ShortBuffer;

/**
 * JNI wrapper for {@code visa.h}.
 * <p>
 * Location of visa.h: "C:\Program Files\IVI Foundation\VISA\Win64\Include\visa.h"
 * <p>
 * This file was autogenerated by <a href="http://jnaerator.googlecode.com/">JNAerator</a>, a tool
 * written by <a href="http://ochafik.com/">Olivier Chafik</a> that
 * <a href="http://code.google.com/p/jnaerator/wiki/CreditsAndLicense">uses a few opensource
 * projects.</a>.
 *
 * @see
 * <a href="https://www.ni.com/docs/en-US/bundle/ni-visa/page/ni-visa/help_file_title.html">NI-VISA
 * Help</a>
 */
@SuppressWarnings("ALL")
public interface JVisaLibrary extends Library {

    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SPEC_VERSION = (int) (0x00500100);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RSRC_CLASS = (int) (0xBFFF0001);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RSRC_NAME = (int) (0xBFFF0002);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RSRC_IMPL_VERSION = (int) (0x3FFF0003);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RSRC_LOCK_STATE = (int) (0x3FFF0004);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MAX_QUEUE_LENGTH = (int) (0x3FFF0005);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_USER_DATA_32 = (int) (0x3FFF0007);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_FDC_CHNL = (int) (0x3FFF000D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_FDC_MODE = (int) (0x3FFF000F);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_FDC_GEN_SIGNAL_EN = (int) (0x3FFF0011);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_FDC_USE_PAIR = (int) (0x3FFF0013);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_SEND_END_EN = (int) (0x3FFF0016);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TERMCHAR = (int) (0x3FFF0018);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TMO_VALUE = (int) (0x3FFF001A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_READDR_EN = (int) (0x3FFF001B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_IO_PROT = (int) (0x3FFF001C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_DMA_ALLOW_EN = (int) (0x3FFF001E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_BAUD = (int) (0x3FFF0021);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_DATA_BITS = (int) (0x3FFF0022);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_PARITY = (int) (0x3FFF0023);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_STOP_BITS = (int) (0x3FFF0024);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_FLOW_CNTRL = (int) (0x3FFF0025);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RD_BUF_OPER_MODE = (int) (0x3FFF002A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RD_BUF_SIZE = (int) (0x3FFF002B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WR_BUF_OPER_MODE = (int) (0x3FFF002D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WR_BUF_SIZE = (int) (0x3FFF002E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_SUPPRESS_END_EN = (int) (0x3FFF0036);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TERMCHAR_EN = (int) (0x3FFF0038);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_DEST_ACCESS_PRIV = (int) (0x3FFF0039);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_DEST_BYTE_ORDER = (int) (0x3FFF003A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_SRC_ACCESS_PRIV = (int) (0x3FFF003C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_SRC_BYTE_ORDER = (int) (0x3FFF003D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_SRC_INCREMENT = (int) (0x3FFF0040);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_DEST_INCREMENT = (int) (0x3FFF0041);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WIN_ACCESS_PRIV = (int) (0x3FFF0045);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WIN_BYTE_ORDER = (int) (0x3FFF0047);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_ATN_STATE = (int) (0x3FFF0057);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_ADDR_STATE = (int) (0x3FFF005C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_CIC_STATE = (int) (0x3FFF005E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_NDAC_STATE = (int) (0x3FFF0062);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_SRQ_STATE = (int) (0x3FFF0067);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_SYS_CNTRL_STATE = (int) (0x3FFF0068);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_HS488_CBL_LEN = (int) (0x3FFF0069);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_CMDR_LA = (int) (0x3FFF006B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_VXI_DEV_CLASS = (int) (0x3FFF006C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MAINFRAME_LA = (int) (0x3FFF0070);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MANF_NAME = (int) (0xBFFF0072);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MODEL_NAME = (int) (0xBFFF0077);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_VXI_VME_INTR_STATUS = (int) (0x3FFF008B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_VXI_TRIG_STATUS = (int) (0x3FFF008D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_VXI_VME_SYSFAIL_STATE = (int) (0x3FFF0094);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WIN_BASE_ADDR_32 = (int) (0x3FFF0098);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WIN_SIZE_32 = (int) (0x3FFF009A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_AVAIL_NUM = (int) (0x3FFF00AC);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MEM_BASE_32 = (int) (0x3FFF00AD);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_CTS_STATE = (int) (0x3FFF00AE);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_DCD_STATE = (int) (0x3FFF00AF);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_DSR_STATE = (int) (0x3FFF00B1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_DTR_STATE = (int) (0x3FFF00B2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_END_IN = (int) (0x3FFF00B3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_END_OUT = (int) (0x3FFF00B4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_REPLACE_CHAR = (int) (0x3FFF00BE);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_RI_STATE = (int) (0x3FFF00BF);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_RTS_STATE = (int) (0x3FFF00C0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_XON_CHAR = (int) (0x3FFF00C1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_ASRL_XOFF_CHAR = (int) (0x3FFF00C2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WIN_ACCESS = (int) (0x3FFF00C3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RM_SESSION = (int) (0x3FFF00C4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_VXI_LA = (int) (0x3FFF00D5);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MANF_ID = (int) (0x3FFF00D9);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MEM_SIZE_32 = (int) (0x3FFF00DD);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MEM_SPACE = (int) (0x3FFF00DE);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MODEL_CODE = (int) (0x3FFF00DF);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_SLOT = (int) (0x3FFF00E8);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_INTF_INST_NAME = (int) (0xBFFF00E9);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_IMMEDIATE_SERV = (int) (0x3FFF0100);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_INTF_PARENT_NUM = (int) (0x3FFF0101);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RSRC_SPEC_VERSION = (int) (0x3FFF0170);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_INTF_TYPE = (int) (0x3FFF0171);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_PRIMARY_ADDR = (int) (0x3FFF0172);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_SECONDARY_ADDR = (int) (0x3FFF0173);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RSRC_MANF_NAME = (int) (0xBFFF0174);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RSRC_MANF_ID = (int) (0x3FFF0175);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_INTF_NUM = (int) (0x3FFF0176);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TRIG_ID = (int) (0x3FFF0177);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_REN_STATE = (int) (0x3FFF0181);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_UNADDR_EN = (int) (0x3FFF0184);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_DEV_STATUS_BYTE = (int) (0x3FFF0189);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_FILE_APPEND_EN = (int) (0x3FFF0192);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_VXI_TRIG_SUPPORT = (int) (0x3FFF0194);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TCPIP_ADDR = (int) (0xBFFF0195);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TCPIP_HOSTNAME = (int) (0xBFFF0196);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TCPIP_PORT = (int) (0x3FFF0197);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TCPIP_DEVICE_NAME = (int) (0xBFFF0199);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TCPIP_NODELAY = (int) (0x3FFF019A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TCPIP_KEEPALIVE = (int) (0x3FFF019B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_4882_COMPLIANT = (int) (0x3FFF019F);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_USB_SERIAL_NUM = (int) (0xBFFF01A0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_USB_INTFC_NUM = (int) (0x3FFF01A1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_USB_PROTOCOL = (int) (0x3FFF01A7);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_USB_MAX_INTR_SIZE = (int) (0x3FFF01AF);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_DEV_NUM = (int) (0x3FFF0201);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_FUNC_NUM = (int) (0x3FFF0202);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_BUS_NUM = (int) (0x3FFF0205);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_CHASSIS = (int) (0x3FFF0206);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_SLOTPATH = (int) (0xBFFF0207);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_SLOT_LBUS_LEFT = (int) (0x3FFF0208);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_SLOT_LBUS_RIGHT = (int) (0x3FFF0209);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_TRIG_BUS = (int) (0x3FFF020A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_STAR_TRIG_BUS = (int) (0x3FFF020B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_STAR_TRIG_LINE = (int) (0x3FFF020C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_SRC_TRIG_BUS = (int) (0x3FFF020D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_DEST_TRIG_BUS = (int) (0x3FFF020E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_TYPE_BAR0 = (int) (0x3FFF0211);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_TYPE_BAR1 = (int) (0x3FFF0212);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_TYPE_BAR2 = (int) (0x3FFF0213);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_TYPE_BAR3 = (int) (0x3FFF0214);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_TYPE_BAR4 = (int) (0x3FFF0215);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_TYPE_BAR5 = (int) (0x3FFF0216);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR0_32 = (int) (0x3FFF0221);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR1_32 = (int) (0x3FFF0222);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR2_32 = (int) (0x3FFF0223);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR3_32 = (int) (0x3FFF0224);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR4_32 = (int) (0x3FFF0225);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR5_32 = (int) (0x3FFF0226);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR0_64 = (int) (0x3FFF0228);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR1_64 = (int) (0x3FFF0229);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR2_64 = (int) (0x3FFF022A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR3_64 = (int) (0x3FFF022B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR4_64 = (int) (0x3FFF022C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR5_64 = (int) (0x3FFF022D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR0_32 = (int) (0x3FFF0231);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR1_32 = (int) (0x3FFF0232);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR2_32 = (int) (0x3FFF0233);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR3_32 = (int) (0x3FFF0234);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR4_32 = (int) (0x3FFF0235);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR5_32 = (int) (0x3FFF0236);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR0_64 = (int) (0x3FFF0238);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR1_64 = (int) (0x3FFF0239);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR2_64 = (int) (0x3FFF023A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR3_64 = (int) (0x3FFF023B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR4_64 = (int) (0x3FFF023C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR5_64 = (int) (0x3FFF023D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_IS_EXPRESS = (int) (0x3FFF0240);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_SLOT_LWIDTH = (int) (0x3FFF0241);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MAX_LWIDTH = (int) (0x3FFF0242);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_ACTUAL_LWIDTH = (int) (0x3FFF0243);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_DSTAR_BUS = (int) (0x3FFF0244);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_DSTAR_SET = (int) (0x3FFF0245);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_ALLOW_WRITE_COMBINE = (int) (0x3FFF0246);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TCPIP_HISLIP_OVERLAP_EN = (int) (0x3FFF0300);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TCPIP_HISLIP_VERSION = (int) (0x3FFF0301);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB = (int) (0x3FFF0302);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_TCPIP_IS_HISLIP = (int) (0x3FFF0303);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_JOB_ID = (int) (0x3FFF4006);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_EVENT_TYPE = (int) (0x3FFF4010);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_SIGP_STATUS_ID = (int) (0x3FFF4011);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RECV_TRIG_ID = (int) (0x3FFF4012);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_INTR_STATUS_ID = (int) (0x3FFF4023);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_STATUS = (int) (0x3FFF4025);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RET_COUNT_32 = (int) (0x3FFF4026);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_BUFFER = (int) (0x3FFF4027);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RECV_INTR_LEVEL = (int) (0x3FFF4041);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_OPER_NAME = (int) (0xBFFF4042);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_GPIB_RECV_CIC_STATE = (int) (0x3FFF4193);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RECV_TCPIP_ADDR = (int) (0xBFFF4198);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_USB_RECV_INTR_SIZE = (int) (0x3FFF41B0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_USB_RECV_INTR_DATA = (int) (0xBFFF41B1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_RECV_INTR_SEQ = (int) (0x3FFF4240);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_RECV_INTR_DATA = (int) (0x3FFF4241);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_USER_DATA = (int) (0x3FFF0007);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_RET_COUNT = (int) (0x3FFF4026);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WIN_BASE_ADDR_64 = (int) (0x3FFF009B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WIN_SIZE_64 = (int) (0x3FFF009C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MEM_BASE_64 = (int) (0x3FFF00D0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MEM_SIZE_64 = (int) (0x3FFF00D1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WIN_BASE_ADDR = (int) (0x3FFF0098);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_WIN_SIZE = (int) (0x3FFF009A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MEM_BASE = (int) (0x3FFF00AD);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_MEM_SIZE = (int) (0x3FFF00DD);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR0 = (int) (0x3FFF0221);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR1 = (int) (0x3FFF0222);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR2 = (int) (0x3FFF0223);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR3 = (int) (0x3FFF0224);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR4 = (int) (0x3FFF0225);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_BASE_BAR5 = (int) (0x3FFF0226);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR0 = (int) (0x3FFF0231);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR1 = (int) (0x3FFF0232);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR2 = (int) (0x3FFF0233);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR3 = (int) (0x3FFF0234);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR4 = (int) (0x3FFF0235);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ATTR_PXI_MEM_SIZE_BAR5 = (int) (0x3FFF0236);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_IO_COMPLETION = (int) (0x3FFF2009);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_TRIG = (int) (0xBFFF200A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_SERVICE_REQ = (int) (0x3FFF200B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_CLEAR = (int) (0x3FFF200D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_EXCEPTION = (int) (0xBFFF200E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_GPIB_CIC = (int) (0x3FFF2012);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_GPIB_TALK = (int) (0x3FFF2013);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_GPIB_LISTEN = (int) (0x3FFF2014);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_VXI_VME_SYSFAIL = (int) (0x3FFF201D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_VXI_VME_SYSRESET = (int) (0x3FFF201E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_VXI_SIGP = (int) (0x3FFF2020);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_VXI_VME_INTR = (int) (0xBFFF2021);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_PXI_INTR = (int) (0x3FFF2022);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_TCPIP_CONNECT = (int) (0x3FFF2036);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EVENT_USB_INTR = (int) (0x3FFF2037);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ALL_ENABLED_EVENTS = (int) (0x3FFF7FFF);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_EVENT_EN = (int) (0x3FFF0002);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_EVENT_DIS = (int) (0x3FFF0003);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_QUEUE_EMPTY = (int) (0x3FFF0004);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_TERM_CHAR = (int) (0x3FFF0005);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_MAX_CNT = (int) (0x3FFF0006);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_DEV_NPRESENT = (int) (0x3FFF007D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_TRIG_MAPPED = (int) (0x3FFF007E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_QUEUE_NEMPTY = (int) (0x3FFF0080);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_NCHAIN = (int) (0x3FFF0098);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_NESTED_SHARED = (int) (0x3FFF0099);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_NESTED_EXCLUSIVE = (int) (0x3FFF009A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUCCESS_SYNC = (int) (0x3FFF009B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WARN_QUEUE_OVERFLOW = (int) (0x3FFF000C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WARN_CONFIG_NLOADED = (int) (0x3FFF0077);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WARN_NULL_OBJECT = (int) (0x3FFF0082);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WARN_NSUP_ATTR_STATE = (int) (0x3FFF0084);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WARN_UNKNOWN_STATUS = (int) (0x3FFF0085);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WARN_NSUP_BUF = (int) (0x3FFF0088);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WARN_EXT_FUNC_NIMPL = (int) (0x3FFF00A9);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_SYSTEM_ERROR = (int) ((-2147483647 - 1) + 0x3FFF0000);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_OBJECT = (int) ((-2147483647 - 1) + 0x3FFF000E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_RSRC_LOCKED = (int) ((-2147483647 - 1) + 0x3FFF000F);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_EXPR = (int) ((-2147483647 - 1) + 0x3FFF0010);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_RSRC_NFOUND = (int) ((-2147483647 - 1) + 0x3FFF0011);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_RSRC_NAME = (int) ((-2147483647 - 1) + 0x3FFF0012);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_ACC_MODE = (int) ((-2147483647 - 1) + 0x3FFF0013);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_TMO = (int) ((-2147483647 - 1) + 0x3FFF0015);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_CLOSING_FAILED = (int) ((-2147483647 - 1) + 0x3FFF0016);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_DEGREE = (int) ((-2147483647 - 1) + 0x3FFF001B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_JOB_ID = (int) ((-2147483647 - 1) + 0x3FFF001C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_ATTR = (int) ((-2147483647 - 1) + 0x3FFF001D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_ATTR_STATE = (int) ((-2147483647 - 1) + 0x3FFF001E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_ATTR_READONLY = (int) ((-2147483647 - 1) + 0x3FFF001F);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_LOCK_TYPE = (int) ((-2147483647 - 1) + 0x3FFF0020);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_ACCESS_KEY = (int) ((-2147483647 - 1) + 0x3FFF0021);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_EVENT = (int) ((-2147483647 - 1) + 0x3FFF0026);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_MECH = (int) ((-2147483647 - 1) + 0x3FFF0027);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_HNDLR_NINSTALLED = (int) ((-2147483647 - 1) + 0x3FFF0028);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_HNDLR_REF = (int) ((-2147483647 - 1) + 0x3FFF0029);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_CONTEXT = (int) ((-2147483647 - 1) + 0x3FFF002A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NENABLED = (int) ((-2147483647 - 1) + 0x3FFF002F);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_ABORT = (int) ((-2147483647 - 1) + 0x3FFF0030);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_RAW_WR_PROT_VIOL = (int) ((-2147483647 - 1) + 0x3FFF0034);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_RAW_RD_PROT_VIOL = (int) ((-2147483647 - 1) + 0x3FFF0035);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_OUTP_PROT_VIOL = (int) ((-2147483647 - 1) + 0x3FFF0036);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INP_PROT_VIOL = (int) ((-2147483647 - 1) + 0x3FFF0037);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_BERR = (int) ((-2147483647 - 1) + 0x3FFF0038);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_IN_PROGRESS = (int) ((-2147483647 - 1) + 0x3FFF0039);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_SETUP = (int) ((-2147483647 - 1) + 0x3FFF003A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_QUEUE_ERROR = (int) ((-2147483647 - 1) + 0x3FFF003B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_ALLOC = (int) ((-2147483647 - 1) + 0x3FFF003C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_MASK = (int) ((-2147483647 - 1) + 0x3FFF003D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_IO = (int) ((-2147483647 - 1) + 0x3FFF003E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_FMT = (int) ((-2147483647 - 1) + 0x3FFF003F);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_FMT = (int) ((-2147483647 - 1) + 0x3FFF0041);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_LINE_IN_USE = (int) ((-2147483647 - 1) + 0x3FFF0042);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_MODE = (int) ((-2147483647 - 1) + 0x3FFF0046);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_SRQ_NOCCURRED = (int) ((-2147483647 - 1) + 0x3FFF004A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_SPACE = (int) ((-2147483647 - 1) + 0x3FFF004E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_OFFSET = (int) ((-2147483647 - 1) + 0x3FFF0051);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_WIDTH = (int) ((-2147483647 - 1) + 0x3FFF0052);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_OFFSET = (int) ((-2147483647 - 1) + 0x3FFF0054);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_VAR_WIDTH = (int) ((-2147483647 - 1) + 0x3FFF0055);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_WINDOW_NMAPPED = (int) ((-2147483647 - 1) + 0x3FFF0057);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_RESP_PENDING = (int) ((-2147483647 - 1) + 0x3FFF0059);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NLISTENERS = (int) ((-2147483647 - 1) + 0x3FFF005F);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NCIC = (int) ((-2147483647 - 1) + 0x3FFF0060);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSYS_CNTLR = (int) ((-2147483647 - 1) + 0x3FFF0061);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_OPER = (int) ((-2147483647 - 1) + 0x3FFF0067);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INTR_PENDING = (int) ((-2147483647 - 1) + 0x3FFF0068);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_ASRL_PARITY = (int) ((-2147483647 - 1) + 0x3FFF006A);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_ASRL_FRAMING = (int) ((-2147483647 - 1) + 0x3FFF006B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_ASRL_OVERRUN = (int) ((-2147483647 - 1) + 0x3FFF006C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_TRIG_NMAPPED = (int) ((-2147483647 - 1) + 0x3FFF006E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_ALIGN_OFFSET = (int) ((-2147483647 - 1) + 0x3FFF0070);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_USER_BUF = (int) ((-2147483647 - 1) + 0x3FFF0071);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_RSRC_BUSY = (int) ((-2147483647 - 1) + 0x3FFF0072);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_WIDTH = (int) ((-2147483647 - 1) + 0x3FFF0076);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_PARAMETER = (int) ((-2147483647 - 1) + 0x3FFF0078);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_PROT = (int) ((-2147483647 - 1) + 0x3FFF0079);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_SIZE = (int) ((-2147483647 - 1) + 0x3FFF007B);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_WINDOW_MAPPED = (int) ((-2147483647 - 1) + 0x3FFF0080);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NIMPL_OPER = (int) ((-2147483647 - 1) + 0x3FFF0081);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_LENGTH = (int) ((-2147483647 - 1) + 0x3FFF0083);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_MODE = (int) ((-2147483647 - 1) + 0x3FFF0091);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_SESN_NLOCKED = (int) ((-2147483647 - 1) + 0x3FFF009C);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_MEM_NSHARED = (int) ((-2147483647 - 1) + 0x3FFF009D);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_LIBRARY_NFOUND = (int) ((-2147483647 - 1) + 0x3FFF009E);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_INTR = (int) ((-2147483647 - 1) + 0x3FFF009F);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_LINE = (int) ((-2147483647 - 1) + 0x3FFF00A0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_FILE_ACCESS = (int) ((-2147483647 - 1) + 0x3FFF00A1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_FILE_IO = (int) ((-2147483647 - 1) + 0x3FFF00A2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_LINE = (int) ((-2147483647 - 1) + 0x3FFF00A3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NSUP_MECH = (int) ((-2147483647 - 1) + 0x3FFF00A4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INTF_NUM_NCONFIG = (int) ((-2147483647 - 1) + 0x3FFF00A5);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_CONN_LOST = (int) ((-2147483647 - 1) + 0x3FFF00A6);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_NPERMISSION = (int) ((-2147483647 - 1) + 0x3FFF00A8);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_FIND_BUFLEN = (int) (256);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_INTF_GPIB = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_INTF_VXI = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_INTF_GPIB_VXI = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_INTF_ASRL = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_INTF_PXI = (int) (5);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_INTF_TCPIP = (int) (6);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_INTF_USB = (int) (7);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PROT_NORMAL = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PROT_FDC = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PROT_HS488 = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PROT_4882_STRS = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PROT_USBTMC_VENDOR = (int) (5);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_FDC_NORMAL = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_FDC_STREAM = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_LOCAL_SPACE = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_A16_SPACE = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_A24_SPACE = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_A32_SPACE = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_A64_SPACE = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_ALLOC_SPACE = (int) (9);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_CFG_SPACE = (int) (10);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_BAR0_SPACE = (int) (11);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_BAR1_SPACE = (int) (12);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_BAR2_SPACE = (int) (13);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_BAR3_SPACE = (int) (14);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_BAR4_SPACE = (int) (15);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_BAR5_SPACE = (int) (16);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_OPAQUE_SPACE = (int) (0xFFFF);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_UNKNOWN_LA = (int) (-1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_UNKNOWN_SLOT = (int) (-1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_UNKNOWN_LEVEL = (int) (-1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_UNKNOWN_CHASSIS = (int) (-1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_QUEUE = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_HNDLR = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SUSPEND_HNDLR = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ALL_MECH = (int) (0xFFFF);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ANY_HNDLR = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_ALL = (int) (-2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_SW = (int) (-1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_TTL0 = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_TTL1 = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_TTL2 = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_TTL3 = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_TTL4 = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_TTL5 = (int) (5);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_TTL6 = (int) (6);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_TTL7 = (int) (7);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_ECL0 = (int) (8);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_ECL1 = (int) (9);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_ECL2 = (int) (10);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_ECL3 = (int) (11);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_ECL4 = (int) (12);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_ECL5 = (int) (13);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT1 = (int) (14);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT2 = (int) (15);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT3 = (int) (16);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT4 = (int) (17);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT5 = (int) (18);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT6 = (int) (19);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT7 = (int) (20);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT8 = (int) (21);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT9 = (int) (22);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT10 = (int) (23);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT11 = (int) (24);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_SLOT12 = (int) (25);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_INSTR = (int) (26);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_PANEL_IN = (int) (27);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_PANEL_OUT = (int) (28);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_VXI0 = (int) (29);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_VXI1 = (int) (30);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_STAR_VXI2 = (int) (31);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_PROT_DEFAULT = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_PROT_ON = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_PROT_OFF = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_PROT_SYNC = (int) (5);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_PROT_RESERVE = (int) (6);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_PROT_UNRESERVE = (int) (7);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_READ_BUF = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WRITE_BUF = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_READ_BUF_DISCARD = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WRITE_BUF_DISCARD = (int) (8);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_IO_IN_BUF = (int) (16);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_IO_OUT_BUF = (int) (32);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_IO_IN_BUF_DISCARD = (int) (64);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_IO_OUT_BUF_DISCARD = (int) (128);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_FLUSH_ON_ACCESS = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_FLUSH_WHEN_FULL = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_FLUSH_DISABLE = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_NMAPPED = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_USE_OPERS = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_DEREF_ADDR = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TMO_IMMEDIATE = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final long VI_TMO_INFINITE = (long) (0xFFFFFFFFL);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_NO_LOCK = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_EXCLUSIVE_LOCK = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_SHARED_LOCK = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_LOAD_CONFIG = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_NO_SEC_ADDR = (int) (0xFFFF);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_PAR_NONE = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_PAR_ODD = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_PAR_EVEN = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_PAR_MARK = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_PAR_SPACE = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_STOP_ONE = (int) (10);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_STOP_ONE5 = (int) (15);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_STOP_TWO = (int) (20);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_FLOW_NONE = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_FLOW_XON_XOFF = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_FLOW_RTS_CTS = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_FLOW_DTR_DSR = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_END_NONE = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_END_LAST_BIT = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_END_TERMCHAR = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_END_BREAK = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_STATE_ASSERTED = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_STATE_UNASSERTED = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_STATE_UNKNOWN = (int) (-1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_BIG_ENDIAN = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_LITTLE_ENDIAN = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_DATA_PRIV = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_DATA_NPRIV = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PROG_PRIV = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PROG_NPRIV = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_BLCK_PRIV = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_BLCK_NPRIV = (int) (5);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_D64_PRIV = (int) (6);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_D64_NPRIV = (int) (7);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_D64_2EVME = (int) (8);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_D64_SST160 = (int) (9);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_D64_SST267 = (int) (10);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_D64_SST320 = (int) (11);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WIDTH_8 = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WIDTH_16 = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WIDTH_32 = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_WIDTH_64 = (int) (8);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_REN_DEASSERT = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_REN_ASSERT = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_REN_DEASSERT_GTL = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_REN_ASSERT_ADDRESS = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_REN_ASSERT_LLO = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_REN_ASSERT_ADDRESS_LLO = (int) (5);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_REN_ADDRESS_GTL = (int) (6);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_ATN_DEASSERT = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_ATN_ASSERT = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_ATN_DEASSERT_HANDSHAKE = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_ATN_ASSERT_IMMEDIATE = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_HS488_DISABLED = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_HS488_NIMPL = (int) (-1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_UNADDRESSED = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_TALKER = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_GPIB_LISTENER = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_CMD16 = (int) (0x0200);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_CMD16_RESP16 = (int) (0x0202);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_RESP16 = (int) (0x0002);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_CMD32 = (int) (0x0400);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_CMD32_RESP16 = (int) (0x0402);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_CMD32_RESP32 = (int) (0x0404);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_RESP32 = (int) (0x0004);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASSERT_SIGNAL = (int) (-1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASSERT_USE_ASSIGNED = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASSERT_IRQ1 = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASSERT_IRQ2 = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASSERT_IRQ3 = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASSERT_IRQ4 = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASSERT_IRQ5 = (int) (5);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASSERT_IRQ6 = (int) (6);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASSERT_IRQ7 = (int) (7);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_UTIL_ASSERT_SYSRESET = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_UTIL_ASSERT_SYSFAIL = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_UTIL_DEASSERT_SYSFAIL = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_CLASS_MEMORY = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_CLASS_EXTENDED = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_CLASS_MESSAGE = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_CLASS_REGISTER = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_VXI_CLASS_OTHER = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_ADDR_NONE = (int) (0);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_ADDR_MEM = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_ADDR_IO = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_ADDR_CFG = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_TRIG_UNKNOWN = (int) (-1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_LBUS_STAR_TRIG_BUS_0 = (int) (1000);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_LBUS_STAR_TRIG_BUS_1 = (int) (1001);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_LBUS_STAR_TRIG_BUS_2 = (int) (1002);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_LBUS_STAR_TRIG_BUS_3 = (int) (1003);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_LBUS_STAR_TRIG_BUS_4 = (int) (1004);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_LBUS_STAR_TRIG_BUS_5 = (int) (1005);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_LBUS_STAR_TRIG_BUS_6 = (int) (1006);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_LBUS_STAR_TRIG_BUS_7 = (int) (1007);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_LBUS_STAR_TRIG_BUS_8 = (int) (1008);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_LBUS_STAR_TRIG_BUS_9 = (int) (1009);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_PXI_STAR_TRIG_CONTROLLER = (int) (1413);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ERROR_INV_SESSION = (int) ((-2147483647 - 1) + 0x3FFF000E);
    /** <i>native declaration : visa.h</i>
     */
    public static final long VI_INFINITE = (long) (0xFFFFFFFFL);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_NORMAL = (int) (1);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_FDC = (int) (2);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_HS488 = (int) (3);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL488 = (int) (4);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_IN_BUF = (int) (16);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_OUT_BUF = (int) (32);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_IN_BUF_DISCARD = (int) (64);
    /** <i>native declaration : visa.h</i>
     */
    public static final int VI_ASRL_OUT_BUF_DISCARD = (int) (128);

    /** <i>native declaration : visa.h:69</i>
     */
//    public interface ViStatus extends Callback {
//            JVisaInterface.ViStatus_callback apply(IntByReference ViHndlr);
//    };
//    /** <i>native declaration : visa.h</i> */
//    public interface ViStatus_callback extends Callback {
//            int apply(NativeLong vi, NativeLong eventType, NativeLong event, Pointer userHandle);
//    };
//    public NativeLong viStatus = new NativeLong();
//    public interface ViStatus extends NativeLong {
//    };

    /**
     * - Resource Manager Functions and Operations -------------------------------<br>
     * Original signature : <code>ViStatus viOpenDefaultRM(ViPSession)</code><br>
     * <i>native declaration : visa.h:74</i>
     *
     * @param vi session handle
     * @return status of the operation
     */
    NativeLong viOpenDefaultRM(NativeLongByReference vi);

    /**
     * Original signature : <code>ViStatus viFindRsrc(ViSession, ViString, ViPFindList, ViPUInt32, ViChar[])</code><br>
     * <i>native declaration : visa.h:76</i>
     *
     * @param rmSession session handle of resource manager
     * @param expr regular search expression, for example "TCPIP::*::INSTR"
     * @param vi find handle, to be used in viFindNext function
     * @param retCnt number of instruments found
     * @param desc first found instrument with address matching regular expression
     * @return status of the operation
     */
    NativeLong viFindRsrc(NativeLong rmSession, ByteBuffer expr, NativeLongByReference vi, NativeLongByReference retCnt, ByteBuffer desc);

    /**
     * Original signature : <code>ViStatus viFindNext(ViFindList, ViChar[])</code><br>
     * <i>native declaration : visa.h:78</i>
     *
     * @param vi find handle, obtained from viFindRsrc function
     * @param desc next found instrument with address matching regular expression
     * @return status of the operation
     */
    NativeLong viFindNext(NativeLong vi, ByteBuffer desc);

    /**
     * Original signature : <code>ViStatus viParseRsrc(ViSession, ViRsrc, ViPUInt16, ViPUInt16)</code><br>
     * <i>native declaration : visa.h:80</i>
     *
     * @param rmSession session handle of resource manager
     * @param rsrcName name of instrument resource
     * @param intfType type of communication interface
     * @param intfNum number of board the interface uses
     * @return status of the operation
     */
    NativeLong viParseRsrc(NativeLong rmSession, ByteBuffer rsrcName, ShortBuffer intfType, ShortBuffer intfNum);

    /**
     * Original signature : <code>ViStatus viParseRsrcEx(ViSession, ViRsrc, ViPUInt16, ViPUInt16, ViChar[], ViChar[], ViChar[])</code><br>
     * <i>native declaration : visa.h:82</i>
     *
     * @param rmSession session handle of resource manager
     * @param rsrcName name of instrument resource
     * @param intfType type of communication interface
     * @param intfNum number of board the interface uses
     * @param rsrcClass resource class, for example "INSTR"
     * @param expandedUnaliasedName complete address string of instrument
     * @param aliasIfExists name alias
     * @return status of the operation
     */
//    NativeLong viParseRsrcEx(NativeLong rmSession, ByteBuffer rsrcName, ShortBuffer intfType, ShortBuffer intfNum, ByteBuffer rsrcClass, ByteBuffer expandedUnaliasedName, ByteBuffer aliasIfExists);
    // pretty sure some of these should be integer types, not a buffer. PF
    // http://zone.ni.com/reference/en-XX/help/370131S-01/ni-visa/viparsersrcex/
    NativeLong viParseRsrcEx(NativeLong rmSession, ByteBuffer rsrcName, NativeLongByReference intfType, NativeLongByReference intfNum, NativeLongByReference rsrcClass, ByteBuffer expandedUnaliasedName, ByteBuffer aliasIfExists);

    /**
     * Original signature : <code>ViStatus viOpen(ViSession, ViRsrc, ViAccessMode, ViUInt32, ViPSession)</code><br>
     * <i>native declaration : visa.h:86</i>
     *
     * @param rmSession session handle of resource manager
     * @param name resource name / address string of instrument
     * @param mode access mode
     * @param timeout timeout of function in ms
     * @param vi handle for instrument session
     * @return status of the operation
     */
    NativeLong viOpen(NativeLong rmSession, ByteBuffer name, NativeLong mode, NativeLong timeout, NativeLongByReference vi);

    /**
     * - Resource Template Operations --------------------------------------------<br>
     * Original signature : <code>ViStatus viClose(ViObject)</code><br>
     * <i>native declaration : visa.h:91</i>
     *
     * @param vi handle for instrument session
     * @return status of the operation
     */
    NativeLong viClose(NativeLong vi);

    /**
     * Original signature : <code>ViStatus viSetAttribute(ViObject, ViAttr, ViAttrState)</code><br>
     * <i>native declaration : visa.h:92</i>
     *
     * @param vi handle for instrument session
     * @param attrName type / key of attribute
     * @param attrValue value of attribute
     * @return status of the operation
     */
    NativeLong viSetAttribute(NativeLong vi, NativeLong attrName, NativeLong attrValue);

    /**
     * Original signature : <code>ViStatus viGetAttribute(ViObject, ViAttr, void*)</code><br>
     * <i>native declaration : visa.h:93</i>
     *
     * @param vi handle for instrument session
     * @param attrName type / key of attribute
     * @param attrValue value of attribute
     * @return status of the operation
     */
    NativeLong viGetAttribute(NativeLong vi, NativeLong attrName, Pointer attrValue);

    /**
     * Original signature : <code>ViStatus viStatusDesc(ViObject, ViStatus, ViChar[])</code><br>
     * <i>native declaration : visa.h:94</i>
     *
     * @param vi handle for instrument session
     * @param status status the description is requested for
     * @param desc status description
     * @return status of the operation
     */
    NativeLong viStatusDesc(NativeLong vi, NativeLong status, ByteBuffer desc);

    /**
     * Original signature : <code>ViStatus viTerminate(ViObject, ViUInt16, ViJobId)</code><br>
     * <i>native declaration : visa.h:95</i>
     *
     * @param vi handle for instrument session
     * @param degree always 0
     * @param jobId job identifier
     * @return status of the operation
     */
    NativeLong viTerminate(NativeLong vi, short degree, NativeLong jobId);

    /**
     * Original signature : <code>ViStatus viLock(ViSession, ViAccessMode, ViUInt32, ViKeyId, ViChar[])</code><br>
     * <i>native declaration : visa.h:97</i>
     *
     * @param vi handle for instrument session
     * @param lockType type of lock, exclusive (0) or shared (1)
     * @param timeout maximum time in ms to wait for the lock
     * @param requestedKey lock key - can be given to other sessions
     * @param accessKey access key to lock is returned if requestedKey is null
     * @return status of the operation
     */
    NativeLong viLock(NativeLong vi, NativeLong lockType, NativeLong timeout, ByteBuffer requestedKey, ByteBuffer accessKey);

    /**
     * Original signature : <code>ViStatus viUnlock(ViSession)</code><br>
     * <i>native declaration : visa.h:99</i>
     *
     * @param vi handle for instrument session
     * @return status of the operation
     */
    NativeLong viUnlock(NativeLong vi);

    /**
     * Original signature : <code>ViStatus viEnableEvent(ViSession, ViEventType, ViUInt16, ViEventFilter)</code><br>
     * <i>native declaration : visa.h:100</i>
     *
     * @param vi handle for instrument session
     * @param eventType event type
     * @param mechanism event mechanism
     * @param context event context
     * @return status of the operation
     */
    NativeLong viEnableEvent(NativeLong vi, NativeLong eventType, short mechanism, NativeLong context);

    /**
     * Original signature : <code>ViStatus viDisableEvent(ViSession, ViEventType, ViUInt16)</code><br>
     * <i>native declaration : visa.h:102</i>
     *
     * @param vi handle for instrument session
     * @param eventType event type
     * @param mechanism event mechanism
     * @return status of the operation
     */
    NativeLong viDisableEvent(NativeLong vi, NativeLong eventType, short mechanism);

    /**
     * Original signature : <code>ViStatus viDiscardEvents(ViSession, ViEventType, ViUInt16)</code><br>
     * <i>native declaration : visa.h:103</i>
     *
     * @param vi handle for instrument session
     * @param eventType event type
     * @param mechanism event mechanism
     * @return status of the operation
     */
    NativeLong viDiscardEvents(NativeLong vi, NativeLong eventType, short mechanism);

    /**
     * Original signature : <code>ViStatus viWaitOnEvent(ViSession, ViEventType, ViUInt32, ViPEventType, ViPEvent)</code><br>
     * <i>native declaration : visa.h:104</i>
     *
     * @param vi handle for instrument session
     * @param inEventType event type to wait for
     * @param timeout wait time in ms before timing out
     * @param outEventType signaled event type
     * @param outContext signaled event context
     * @return status of the operation
     */
    NativeLong viWaitOnEvent(NativeLong vi, NativeLong inEventType, NativeLong timeout, NativeLongByReference outEventType, NativeLongByReference outContext);

    /*
     * Original signature : <code>ViStatus viInstallHandler(ViSession, ViEventType, ViHndlr, ViAddr)</code><br>
     * <i>native declaration : visa.h:106</i>
     *
     * @param vi handle for instrument session (NOT handle to resource manager)
     * @param eventType event type to handle
     * @param handler event handler
     * @param userHandle handler id given by the application
     * @return status of the operation
    NativeLong viInstallHandler(NativeLong vi, NativeLong eventType, JVisaLibrary.ViHndlr handler, Pointer userHandle);
     */

    /**
     * Original signature : <code>ViStatus viInstallHandler(ViSession, ViEventType, ViHndlr, ViAddr)</code><br>
     * <i>native declaration : visa.h:106</i>
     *
     * @see <a href="https://www.ni.com/docs/en-US/bundle/ni-visa/page/ni-visa/queuingcallbackmechanismsamplecode.html">Queuing and Callback Mechanism Sample Code</a>
     *
     *
     * @param vi handle for instrument session (NOT handle to resource manager)
     * @param eventType event type to handle
     * @param handler event handler
     * @param userHandle handler id given by the application
     * @return status of the operation
     */
    NativeLong viInstallHandler(NativeLong vi, NativeLong eventType, JVisaEventCallback handler, Pointer userHandle);

    /*
     * Original signature : <code>ViStatus viUninstallHandler(ViSession, ViEventType, ViHndlr, ViAddr)</code><br>
     * <i>native declaration : visa.h:108</i>
     *
     * @param vi handle for instrument session
     * @param eventType event type to handle
     * @param handler event handler
     * @param userHandle handler id given by the application
     * @return status of the operation
      NativeLong viUninstallHandler(NativeLong vi, NativeLong eventType, JVisaLibrary.ViHndlr handler, Pointer userHandle);
     */

    /**
     * Original signature : <code>ViStatus viUninstallHandler(ViSession, ViEventType, ViHndlr, ViAddr)</code><br>
     * <i>native declaration : visa.h:108</i>
     *
     * @param vi handle for instrument session
     * @param eventType event type to handle
     * @param handler event handler
     * @param userHandle handler id given by the application
     * @return status of the operation
     */
    NativeLong viUninstallHandler(NativeLong vi, NativeLong eventType, JVisaEventCallback handler, Pointer userHandle);

    /**
     * - Basic I/O Operations ----------------------------------------------------<br>
     * Original signature : <code>ViStatus viRead(ViSession, ViPBuf, ViUInt32, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:113</i>
     *
     * @param vi handle for instrument session
     * @param buf read buffer
     * @param cnt number of bytes to read
     * @param retCnt number of bytes read
     * @return status of the operation
     */
    NativeLong viRead(NativeLong vi, ByteBuffer buf, NativeLong cnt, NativeLongByReference retCnt);

    /**
     * Original signature : <code>ViStatus viReadAsync(ViSession, ViPBuf, ViUInt32, ViPJobId)</code><br>
     * <i>native declaration : visa.h:114</i>
     *
     * @param vi handle for instrument session
     * @param buf read buffer
     * @param cnt number of bytes to read
     * @param jobId job identifier
     * @return status of the operation
     */
    NativeLong viReadAsync(NativeLong vi, ByteBuffer buf, NativeLong cnt, NativeLongByReference jobId);

    /**
     * Original signature : <code>ViStatus viReadToFile(ViSession, ViConstString, ViUInt32, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:115</i>
     *
     * @param vi handle for instrument session
     * @param filename output filename
     * @param cnt number of bytes to read
     * @param retCnt number of bytes read
     * @return status of the operation
     */
    NativeLong viReadToFile(NativeLong vi, ByteBuffer filename, NativeLong cnt, NativeLongByReference retCnt);

    /**
     * Original signature : <code>ViStatus viWrite(ViSession, ViBuf, ViUInt32, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:117</i>
     *
     * @param vi handle for instrument session
     * @param buf write buffer
     * @param cnt number of bytes to write
     * @param retCnt number of bytes written
     * @return status of the operation
     */
    NativeLong viWrite(NativeLong vi, ByteBuffer buf, NativeLong cnt, NativeLongByReference retCnt);

    /**
     * Original signature : <code>ViStatus viWriteAsync(ViSession, ViBuf, ViUInt32, ViPJobId)</code><br>
     * <i>native declaration : visa.h:118</i>
     *
     * @param vi handle for instrument session
     * @param buf write buffer
     * @param cnt number of bytes to read
     * @param jobId job identifier
     * @return status of the operation
     */
    NativeLong viWriteAsync(NativeLong vi, ByteBuffer buf, NativeLong cnt, NativeLongByReference jobId);

    /**
     * Original signature : <code>ViStatus viWriteFromFile(ViSession, ViConstString, ViUInt32, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:119</i>
     *
     * @param vi handle for instrument session
     * @param filename input filename
     * @param cnt number of bytes to write
     * @param retCnt number of bytes written
     * @return status of the operation
     */
    NativeLong viWriteFromFile(NativeLong vi, ByteBuffer filename, NativeLong cnt, NativeLongByReference retCnt);

    /**
     * Original signature : <code>ViStatus viAssertTrigger(ViSession, ViUInt16)</code><br>
     * <i>native declaration : visa.h:121</i>
     *
     * @param vi handle for instrument session
     * @param protocol type of protocol
     * @return status of the operation
     */
    NativeLong viAssertTrigger(NativeLong vi, short protocol);

    /**
     * Original signature : <code>ViStatus viReadSTB(ViSession, ViPUInt16)</code><br>
     * <i>native declaration : visa.h:122</i>
     *
     * @param vi handle for instrument session
     * @param status STB status mask
     * @return status of the operation
     */
    NativeLong viReadSTB(NativeLong vi, ShortBuffer status);

    /**
     * Original signature : <code>ViStatus viClear(ViSession)</code><br>
     * <i>native declaration : visa.h:123</i>
     *
     * @param vi handle for instrument session
     * @return status of the operation
     */
    NativeLong viClear(NativeLong vi);

    /**
     * - Formatted and Buffered I/O Operations -----------------------------------<br>
     * Original signature : <code>ViStatus viSetBuf(ViSession, ViUInt16, ViUInt32)</code><br>
     * <i>native declaration : visa.h:127</i>
     *
     * @param vi handle for instrument session
     * @param mask bit mask indicating the buffers to be set
     * @param size buffer size
     * @return status of the operation
     */
    NativeLong viSetBuf(NativeLong vi, short mask, NativeLong size);

    /**
     * Original signature : <code>ViStatus viFlush(ViSession, ViUInt16)</code><br>
     * <i>native declaration : visa.h:128</i>
     *
     * @param vi handle for instrument session
     * @param mask bit mask indicating the buffers to be flushed
     * @return status of the operation
     */
    NativeLong viFlush(NativeLong vi, short mask);

    /**
     * Original signature : <code>ViStatus viBufWrite(ViSession, ViBuf, ViUInt32, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:130</i>
     *
     * @param vi handle for instrument session
     * @param buf buffer to write
     * @param cnt number of bytes to write
     * @param retCnt number of bytes written
     * @return status of the operation
     */
    NativeLong viBufWrite(NativeLong vi, ByteBuffer buf, NativeLong cnt, NativeLongByReference retCnt);

    /**
     * Original signature : <code>ViStatus viBufRead(ViSession, ViPBuf, ViUInt32, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:131</i>
     *
     * @param vi handle for instrument session
     * @param buf buffer to read into
     * @param cnt number of bytes to read
     * @param retCnt number of bytes read
     * @return status of the operation
     */
    NativeLong viBufRead(NativeLong vi, ByteBuffer buf, NativeLong cnt, NativeLongByReference retCnt);

    /**
     * Original signature : <code>ViStatus viPrintf(ViSession, ViString, null)</code><br>
     * <i>native declaration : visa.h:133</i>
     *
     * @param vi handle for instrument session
     * @param writeFmt format string
     * @param varArgs1 comma separated arguments
     * @return status of the operation
     */
    NativeLong viPrintf(NativeLong vi, ByteBuffer writeFmt, Object... varArgs1);

    /**
     * Original signature : <code>ViStatus viVPrintf(ViSession, ViString, ViVAList)</code><br>
     * <i>native declaration : visa.h:134</i>
     *
     * @param vi handle for instrument session
     * @param writeFmt format string
     * @param params parameter list / array
     * @return status of the operation
     */
    NativeLong viVPrintf(NativeLong vi, ByteBuffer writeFmt, JVisaLibrary.ViVAList params);

    /**
     * Original signature : <code>ViStatus viSPrintf(ViSession, ViPBuf, ViString, null)</code><br>
     * <i>native declaration : visa.h:135</i>
     *
     * @param vi handle for instrument session
     * @param buf destination buffer for formatted string
     * @param writeFmt format string
     * @param varArgs1 comma separated arguments
     * @return status of the operation
     */
    NativeLong viSPrintf(NativeLong vi, ByteBuffer buf, ByteBuffer writeFmt, Object... varArgs1);

    /**
     * Original signature : <code>ViStatus viVSPrintf(ViSession, ViPBuf, ViString, ViVAList)</code><br>
     * <i>native declaration : visa.h:136</i>
     *
     * @param vi handle for instrument session
     * @param buf destination buffer for formatted string
     * @param writeFmt format string
     * @param params parameter list / array
     * @return status of the operation
     */
    NativeLong viVSPrintf(NativeLong vi, ByteBuffer buf, ByteBuffer writeFmt, JVisaLibrary.ViVAList params);

    /**
     * Original signature : <code>ViStatus viScanf(ViSession, ViString, null)</code><br>
     * <i>native declaration : visa.h:138</i>
     *
     * @param vi handle for instrument session
     * @param readFmt format string
     * @param varArgs1 comma separated arguments
     * @return status of the operation
     */
    NativeLong viScanf(NativeLong vi, ByteBuffer readFmt, Object... varArgs1);

    /**
     * Original signature : <code>ViStatus viVScanf(ViSession, ViString, ViVAList)</code><br>
     * <i>native declaration : visa.h:139</i>
     *
     * @param vi handle for instrument session
     * @param readFmt format string
     * @param params parameter list / array
     * @return status of the operation
     */
    NativeLong viVScanf(NativeLong vi, ByteBuffer readFmt, JVisaLibrary.ViVAList params);

    /**
     * Original signature : <code>ViStatus viSScanf(ViSession, ViBuf, ViString, null)</code><br>
     * <i>native declaration : visa.h:140</i>
     *
     * @param vi handle for instrument session
     * @param buf source buffer to scan
     * @param readFmt format string
     * @param varArgs1 comma separated arguments
     * @return status of the operation
     */
    NativeLong viSScanf(NativeLong vi, ByteBuffer buf, ByteBuffer readFmt, Object... varArgs1);

    /**
     * Original signature : <code>ViStatus viVSScanf(ViSession, ViBuf, ViString, ViVAList)</code><br>
     * <i>native declaration : visa.h:141</i>
     *
     * @param vi handle for instrument session
     * @param buf source buffer to scan
     * @param readFmt format string
     * @param params parameter list / array
     * @return status of the operation
     */
    NativeLong viVSScanf(NativeLong vi, ByteBuffer buf, ByteBuffer readFmt, JVisaLibrary.ViVAList params);

    /**
     * Original signature : <code>ViStatus viQueryf(ViSession, ViString, ViString, null)</code><br>
     * <i>native declaration : visa.h:143</i>
     *
     * @param vi handle for instrument session
     * @param writeFmt write format string
     * @param readFmt read format string
     * @param varArgs1 comma separated arguments
     * @return status of the operation
     */
    NativeLong viQueryf(NativeLong vi, ByteBuffer writeFmt, ByteBuffer readFmt, Object... varArgs1);

    /**
     * Original signature : <code>ViStatus viVQueryf(ViSession, ViString, ViString, ViVAList)</code><br>
     * <i>native declaration : visa.h:144</i>
     *
     * @param vi handle for instrument session
     * @param writeFmt write format string
     * @param readFmt read format string
     * @param params parameter list / array
     * @return status of the operation
     */
    NativeLong viVQueryf(NativeLong vi, ByteBuffer writeFmt, ByteBuffer readFmt, JVisaLibrary.ViVAList params);

    /**
     * - Memory I/O Operations ---------------------------------------------------<br>
     * Original signature : <code>ViStatus viIn8(ViSession, ViUInt16, ViBusAddress, ViPUInt8)</code><br>
     * <i>native declaration : visa.h:149</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val8 8-bit value
     * @return status of the operation
     */
    NativeLong viIn8(NativeLong vi, short space, NativeLong offset, ByteBuffer val8);

    /**
     * Original signature : <code>ViStatus viOut8(ViSession, ViUInt16, ViBusAddress, ViUInt8)</code><br>
     * <i>native declaration : visa.h:151</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val8 8-bit value
     * @return status of the operation
     */
    NativeLong viOut8(NativeLong vi, short space, NativeLong offset, byte val8);

    /**
     * Original signature : <code>ViStatus viIn16(ViSession, ViUInt16, ViBusAddress, ViPUInt16)</code><br>
     * <i>native declaration : visa.h:153</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val16 16-bit value
     * @return status of the operation
     */
    NativeLong viIn16(NativeLong vi, short space, NativeLong offset, ShortBuffer val16);

    /**
     * Original signature : <code>ViStatus viOut16(ViSession, ViUInt16, ViBusAddress, ViUInt16)</code><br>
     * <i>native declaration : visa.h:155</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val16 16-bit value
     * @return status of the operation
     */
    NativeLong viOut16(NativeLong vi, short space, NativeLong offset, short val16);

    /**
     * Original signature : <code>ViStatus viIn32(ViSession, ViUInt16, ViBusAddress, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:157</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val32 32-bit value
     * @return status of the operation
     */
    NativeLong viIn32(NativeLong vi, short space, NativeLong offset, NativeLongByReference val32);

    /**
     * Original signature : <code>ViStatus viOut32(ViSession, ViUInt16, ViBusAddress, ViUInt32)</code><br>
     * <i>native declaration : visa.h:159</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val32 32-bit value
     * @return status of the operation
     */
    NativeLong viOut32(NativeLong vi, short space, NativeLong offset, NativeLong val32);

    /**
     * Original signature : <code>ViStatus viIn64(ViSession, ViUInt16, ViBusAddress, ViPUInt64)</code><br>
     * <i>native declaration : visa.h:163</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val64 64-bit value
     * @return status of the operation
     */
    NativeLong viIn64(NativeLong vi, short space, NativeLong offset, JVisaLibrary.ViPUInt64 val64);

    /**
     * Original signature : <code>ViStatus viOut64(ViSession, ViUInt16, ViBusAddress, ViUInt64)</code><br>
     * <i>native declaration : visa.h:165</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val64 64-bit value
     * @return status of the operation
     */
    NativeLong viOut64(NativeLong vi, short space, NativeLong offset, JVisaLibrary.ViUInt64 val64);

    /**
     * Original signature : <code>ViStatus viIn8Ex(ViSession, ViUInt16, ViBusAddress64, ViPUInt8)</code><br>
     * <i>native declaration : visa.h:168</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val8 8-bit value
     * @return status of the operation
     */
    NativeLong viIn8Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, ByteBuffer val8);

    /**
     * Original signature : <code>ViStatus viOut8Ex(ViSession, ViUInt16, ViBusAddress64, ViUInt8)</code><br>
     * <i>native declaration : visa.h:170</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val8 8-bit value
     * @return status of the operation
     */
    NativeLong viOut8Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, byte val8);

    /**
     * Original signature : <code>ViStatus viIn16Ex(ViSession, ViUInt16, ViBusAddress64, ViPUInt16)</code><br>
     * <i>native declaration : visa.h:172</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val16 16-bit value
     * @return status of the operation
     */
    NativeLong viIn16Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, ShortBuffer val16);

    /**
     * Original signature : <code>ViStatus viOut16Ex(ViSession, ViUInt16, ViBusAddress64, ViUInt16)</code><br>
     * <i>native declaration : visa.h:174</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val16 16-bit value
     * @return status of the operation
     */
    NativeLong viOut16Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, short val16);

    /**
     * Original signature : <code>ViStatus viIn32Ex(ViSession, ViUInt16, ViBusAddress64, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:176</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val32 32-bit value
     * @return status of the operation
     */
    NativeLong viIn32Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, NativeLongByReference val32);

    /**
     * Original signature : <code>ViStatus viOut32Ex(ViSession, ViUInt16, ViBusAddress64, ViUInt32)</code><br>
     * <i>native declaration : visa.h:178</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val32 32-bit value
     * @return status of the operation
     */
    NativeLong viOut32Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, NativeLong val32);

    /**
     * Original signature : <code>ViStatus viIn64Ex(ViSession, ViUInt16, ViBusAddress64, ViPUInt64)</code><br>
     * <i>native declaration : visa.h:180</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val64 64-bit value
     * @return status of the operation
     */
    NativeLong viIn64Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, JVisaLibrary.ViPUInt64 val64);

    /**
     * Original signature : <code>ViStatus viOut64Ex(ViSession, ViUInt16, ViBusAddress64, ViUInt64)</code><br>
     * <i>native declaration : visa.h:182</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param val64 64-bit value
     * @return status of the operation
     */
    NativeLong viOut64Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, JVisaLibrary.ViUInt64 val64);

    /**
     * Original signature : <code>ViStatus viMoveIn8(ViSession, ViUInt16, ViBusAddress, ViBusSize, ViAUInt8)</code><br>
     * <i>native declaration : visa.h:186</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf8 8-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveIn8(NativeLong vi, short space, NativeLong offset, NativeLong length, ByteBuffer buf8);

    /**
     * Original signature : <code>ViStatus viMoveOut8(ViSession, ViUInt16, ViBusAddress, ViBusSize, ViAUInt8)</code><br>
     * <i>native declaration : visa.h:188</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf8 8-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveOut8(NativeLong vi, short space, NativeLong offset, NativeLong length, ByteBuffer buf8);

    /**
     * Original signature : <code>ViStatus viMoveIn16(ViSession, ViUInt16, ViBusAddress, ViBusSize, ViAUInt16)</code><br>
     * <i>native declaration : visa.h:190</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf16 16-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveIn16(NativeLong vi, short space, NativeLong offset, NativeLong length, ShortBuffer buf16);

    /**
     * Original signature : <code>ViStatus viMoveOut16(ViSession, ViUInt16, ViBusAddress, ViBusSize, ViAUInt16)</code><br>
     * <i>native declaration : visa.h:192</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf16 16-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveOut16(NativeLong vi, short space, NativeLong offset, NativeLong length, ShortBuffer buf16);

    /**
     * Original signature : <code>ViStatus viMoveIn32(ViSession, ViUInt16, ViBusAddress, ViBusSize, ViAUInt32)</code><br>
     * <i>native declaration : visa.h:194</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf32 32-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveIn32(NativeLong vi, short space, NativeLong offset, NativeLong length, NativeLongByReference buf32);

    /**
     * Original signature : <code>ViStatus viMoveOut32(ViSession, ViUInt16, ViBusAddress, ViBusSize, ViAUInt32)</code><br>
     * <i>native declaration : visa.h:196</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf32 32-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveOut32(NativeLong vi, short space, NativeLong offset, NativeLong length, NativeLongByReference buf32);

    /**
     * Original signature : <code>ViStatus viMoveIn64(ViSession, ViUInt16, ViBusAddress, ViBusSize, ViAUInt64)</code><br>
     * <i>native declaration : visa.h:200</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf64 64-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveIn64(NativeLong vi, short space, NativeLong offset, NativeLong length, JVisaLibrary.ViAUInt64 buf64);

    /**
     * Original signature : <code>ViStatus viMoveOut64(ViSession, ViUInt16, ViBusAddress, ViBusSize, ViAUInt64)</code><br>
     * <i>native declaration : visa.h:202</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf64 64-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveOut64(NativeLong vi, short space, NativeLong offset, NativeLong length, JVisaLibrary.ViAUInt64 buf64);

    /**
     * Original signature : <code>ViStatus viMoveIn8Ex(ViSession, ViUInt16, ViBusAddress64, ViBusSize, ViAUInt8)</code><br>
     * <i>native declaration : visa.h:205</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf8 8-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveIn8Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, NativeLong length, ByteBuffer buf8);

    /**
     * Original signature : <code>ViStatus viMoveOut8Ex(ViSession, ViUInt16, ViBusAddress64, ViBusSize, ViAUInt8)</code><br>
     * <i>native declaration : visa.h:207</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf8 8-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveOut8Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, NativeLong length, ByteBuffer buf8);

    /**
     * Original signature : <code>ViStatus viMoveIn16Ex(ViSession, ViUInt16, ViBusAddress64, ViBusSize, ViAUInt16)</code><br>
     * <i>native declaration : visa.h:209</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf16 16-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveIn16Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, NativeLong length, ShortBuffer buf16);

    /**
     * Original signature : <code>ViStatus viMoveOut16Ex(ViSession, ViUInt16, ViBusAddress64, ViBusSize, ViAUInt16)</code><br>
     * <i>native declaration : visa.h:211</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf16 16-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveOut16Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, NativeLong length, ShortBuffer buf16);

    /**
     * Original signature : <code>ViStatus viMoveIn32Ex(ViSession, ViUInt16, ViBusAddress64, ViBusSize, ViAUInt32)</code><br>
     * <i>native declaration : visa.h:213</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf32 32-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveIn32Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, NativeLong length, NativeLongByReference buf32);

    /**
     * Original signature : <code>ViStatus viMoveOut32Ex(ViSession, ViUInt16, ViBusAddress64, ViBusSize, ViAUInt32)</code><br>
     * <i>native declaration : visa.h:215</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf32 32-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveOut32Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, NativeLong length, NativeLongByReference buf32);

    /**
     * Original signature : <code>ViStatus viMoveIn64Ex(ViSession, ViUInt16, ViBusAddress64, ViBusSize, ViAUInt64)</code><br>
     * <i>native declaration : visa.h:217</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf64 64-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveIn64Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, NativeLong length, JVisaLibrary.ViAUInt64 buf64);

    /**
     * Original signature : <code>ViStatus viMoveOut64Ex(ViSession, ViUInt16, ViBusAddress64, ViBusSize, ViAUInt64)</code><br>
     * <i>native declaration : visa.h:219</i>
     *
     * @param vi handle for instrument session
     * @param space type of address space
     * @param offset offset from base address
     * @param length number of bytes to move
     * @param buf64 64-bit buffer
     * @return status of the operation
     */
    NativeLong viMoveOut64Ex(NativeLong vi, short space, JVisaLibrary.ViBusAddress64 offset, NativeLong length, JVisaLibrary.ViAUInt64 buf64);

    /**
     * Original signature : <code>ViStatus viMove(ViSession, ViUInt16, ViBusAddress, ViUInt16, ViUInt16, ViBusAddress, ViUInt16, ViBusSize)</code><br>
     * <i>native declaration : visa.h:223</i>
     *
     * @param vi handle for instrument session
     * @param srcSpace type of source address space
     * @param srcOffset offset from source base address
     * @param srcWidth data width of source element
     * @param destSpace type of destination address space
     * @param destOffset offset from destination base address
     * @param destWidth data width of destination element
     * @param srcLength number of bytes to move
     * @return status of the operation
     */
    NativeLong viMove(NativeLong vi, short srcSpace, NativeLong srcOffset, short srcWidth, short destSpace, NativeLong destOffset, short destWidth, NativeLong srcLength);

    /**
     * Original signature : <code>ViStatus viMoveAsync(ViSession, ViUInt16, ViBusAddress, ViUInt16, ViUInt16, ViBusAddress, ViUInt16, ViBusSize, ViPJobId)</code><br>
     * <i>native declaration : visa.h:227</i>
     *
     * @param vi handle for instrument session
     * @param srcSpace type of source address space
     * @param srcOffset offset from source base address
     * @param srcWidth data width of source element
     * @param destSpace type of destination address space
     * @param destOffset offset from destination base address
     * @param destWidth data width of destination element
     * @param srcLength number of bytes to move
     * @param jobId job identifier
     * @return status of the operation
     */
    NativeLong viMoveAsync(NativeLong vi, short srcSpace, NativeLong srcOffset, short srcWidth, short destSpace, NativeLong destOffset, short destWidth, NativeLong srcLength, NativeLongByReference jobId);

    /**
     * Original signature : <code>ViStatus viMoveEx(ViSession, ViUInt16, ViBusAddress64, ViUInt16, ViUInt16, ViBusAddress64, ViUInt16, ViBusSize)</code><br>
     * <i>native declaration : visa.h:233</i>
     *
     * @param vi handle for instrument session
     * @param srcSpace type of source address space
     * @param srcOffset offset from source base address
     * @param srcWidth data width of source element
     * @param destSpace type of destination address space
     * @param destOffset offset from destination base address
     * @param destWidth data width of destination element
     * @param srcLength number of bytes to move
     * @return status of the operation
     */
    NativeLong viMoveEx(NativeLong vi, short srcSpace, JVisaLibrary.ViBusAddress64 srcOffset, short srcWidth, short destSpace, JVisaLibrary.ViBusAddress64 destOffset, short destWidth, NativeLong srcLength);

    /**
     * Original signature : <code>ViStatus viMoveAsyncEx(ViSession, ViUInt16, ViBusAddress64, ViUInt16, ViUInt16, ViBusAddress64, ViUInt16, ViBusSize, ViPJobId)</code><br>
     * <i>native declaration : visa.h:237</i>
     *
     * @param vi handle for instrument session
     * @param srcSpace type of source address space
     * @param srcOffset offset from source base address
     * @param srcWidth data width of source element
     * @param destSpace type of destination address space
     * @param destOffset offset from destination base address
     * @param destWidth data width of destination element
     * @param srcLength number of bytes to move
     * @param jobId job identifier
     * @return status of the operation
     */
    NativeLong viMoveAsyncEx(NativeLong vi, short srcSpace, JVisaLibrary.ViBusAddress64 srcOffset, short srcWidth, short destSpace, JVisaLibrary.ViBusAddress64 destOffset, short destWidth, NativeLong srcLength, NativeLongByReference jobId);

    /**
     * Original signature : <code>ViStatus viMapAddress(ViSession, ViUInt16, ViBusAddress, ViBusSize, ViBoolean, ViAddr, ViPAddr)</code><br>
     * <i>native declaration : visa.h:243</i>
     *
     * @param vi handle for instrument session
     * @param mapSpace address space to map
     * @param mapOffset address offset
     * @param mapSize memory size to map
     * @param access always 0
     * @param suggested suggested address to map to
     * @param address address space was mapped to this address
     * @return status of the operation
     */
    NativeLong viMapAddress(NativeLong vi, short mapSpace, NativeLong mapOffset, NativeLong mapSize, short access, Pointer suggested, PointerByReference address);

    /**
     * Original signature : <code>ViStatus viUnmapAddress(ViSession)</code><br>
     * <i>native declaration : visa.h:246</i>
     *
     * @param vi handle for instrument session
     * @return status of the operation
     */
    NativeLong viUnmapAddress(NativeLong vi);

    /**
     * Original signature : <code>ViStatus viMapAddressEx(ViSession, ViUInt16, ViBusAddress64, ViBusSize, ViBoolean, ViAddr, ViPAddr)</code><br>
     * <i>native declaration : visa.h:249</i>
     *
     * @param vi handle for instrument session
     * @param mapSpace address space to map
     * @param mapOffset address offset
     * @param mapSize memory size to map
     * @param access always 0
     * @param suggested suggested address to map to
     * @param address address space was mapped to this address
     * @return status of the operation
     */
    NativeLong viMapAddressEx(NativeLong vi, short mapSpace, JVisaLibrary.ViBusAddress64 mapOffset, NativeLong mapSize, short access, Pointer suggested, PointerByReference address);

    /**
     * Original signature : <code>void viPeek8(ViSession, ViAddr, ViPUInt8)</code><br>
     * <i>native declaration : visa.h:254</i>
     *
     * @param vi handle for instrument session
     * @param address memory mapped address
     * @param val8 8-bit value
     */
    void viPeek8(NativeLong vi, Pointer address, ByteBuffer val8);

    /**
     * Original signature : <code>void viPoke8(ViSession, ViAddr, ViUInt8)</code><br>
     * <i>native declaration : visa.h:255</i>
     *
     * @param vi handle for instrument session
     * @param address memory mapped address
     * @param val8 8-bit value
     */
    void viPoke8(NativeLong vi, Pointer address, byte val8);

    /**
     * Original signature : <code>void viPeek16(ViSession, ViAddr, ViPUInt16)</code><br>
     * <i>native declaration : visa.h:256</i>
     *
     * @param vi handle for instrument session
     * @param address memory mapped address
     * @param val16 16-bit value
     */
    void viPeek16(NativeLong vi, Pointer address, ShortBuffer val16);

    /**
     * Original signature : <code>void viPoke16(ViSession, ViAddr, ViUInt16)</code><br>
     * <i>native declaration : visa.h:257</i>
     *
     * @param vi handle for instrument session
     * @param address memory mapped address
     * @param val16 16-bit value
     */
    void viPoke16(NativeLong vi, Pointer address, short val16);

    /**
     * Original signature : <code>void viPeek32(ViSession, ViAddr, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:258</i>
     *
     * @param vi handle for instrument session
     * @param address memory mapped address
     * @param val32 32-bit value
     */
    void viPeek32(NativeLong vi, Pointer address, NativeLongByReference val32);

    /**
     * Original signature : <code>void viPoke32(ViSession, ViAddr, ViUInt32)</code><br>
     * <i>native declaration : visa.h:259</i>
     *
     * @param vi handle for instrument session
     * @param address memory mapped address
     * @param val32 32-bit value
     */
    void viPoke32(NativeLong vi, Pointer address, NativeLong val32);

    /**
     * Original signature : <code>void viPeek64(ViSession, ViAddr, ViPUInt64)</code><br>
     * <i>native declaration : visa.h:262</i>
     *
     * @param vi handle for instrument session
     * @param address memory mapped address
     * @param val64 64-bit value
     */
    void viPeek64(NativeLong vi, Pointer address, JVisaLibrary.ViPUInt64 val64);

    /**
     * Original signature : <code>void viPoke64(ViSession, ViAddr, ViUInt64)</code><br>
     * <i>native declaration : visa.h:263</i>
     *
     * @param vi handle for instrument session
     * @param address memory mapped address
     * @param val64 64-bit value
     */
    void viPoke64(NativeLong vi, Pointer address, JVisaLibrary.ViUInt64 val64);

    /**
     * - Shared Memory Operations ------------------------------------------------<br>
     * Original signature : <code>ViStatus viMemAlloc(ViSession, ViBusSize, ViPBusAddress)</code><br>
     * <i>native declaration : visa.h:268</i>
     *
     * @param vi handle for instrument session
     * @param size number of bytes to allocate
     * @param offset offset from base address
     * @return status of the operation
     */
    NativeLong viMemAlloc(NativeLong vi, NativeLong size, NativeLongByReference offset);

    /**
     * Original signature : <code>ViStatus viMemFree(ViSession, ViBusAddress)</code><br>
     * <i>native declaration : visa.h:269</i>
     *
     * @param vi handle for instrument session
     * @param offset offset from base address
     * @return status of the operation
     */
    NativeLong viMemFree(NativeLong vi, NativeLong offset);

    /**
     * Original signature : <code>ViStatus viMemAllocEx(ViSession, ViBusSize, ViPBusAddress64)</code><br>
     * <i>native declaration : visa.h:272</i>
     *
     * @param vi handle for instrument session
     * @param size number of bytes to allocate
     * @param offset offset from base address
     * @return status of the operation
     */
    NativeLong viMemAllocEx(NativeLong vi, NativeLong size, JVisaLibrary.ViPBusAddress64 offset);

    /**
     * Original signature : <code>ViStatus viMemFreeEx(ViSession, ViBusAddress64)</code><br>
     * <i>native declaration : visa.h:273</i>
     *
     * @param vi handle for instrument session
     * @param offset offset from base address
     * @return status of the operation
     */
    NativeLong viMemFreeEx(NativeLong vi, JVisaLibrary.ViBusAddress64 offset);

    /**
     * - Interface Specific Operations -------------------------------------------<br>
     * Original signature : <code>ViStatus viGpibControlREN(ViSession, ViUInt16)</code><br>
     * <i>native declaration : visa.h:278</i>
     *
     * @param vi handle for instrument session
     * @param mode REN mode (state and optional commands, for example GoToLocal)
     * @return status of the operation
     */
    NativeLong viGpibControlREN(NativeLong vi, short mode);

    /**
     * Original signature : <code>ViStatus viGpibControlATN(ViSession, ViUInt16)</code><br>
     * <i>native declaration : visa.h:279</i>
     *
     * @param vi handle for instrument session
     * @param mode mode of ATN line
     * @return status of the operation
     */
    NativeLong viGpibControlATN(NativeLong vi, short mode);

    /**
     * Original signature : <code>ViStatus viGpibSendIFC(ViSession)</code><br>
     * <i>native declaration : visa.h:280</i>
     *
     * @param vi handle for instrument session
     * @return status of the operation
     */
    NativeLong viGpibSendIFC(NativeLong vi);

    /**
     * Original signature : <code>ViStatus viGpibCommand(ViSession, ViBuf, ViUInt32, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:281</i>
     *
     * @param vi handle for instrument session
     * @param cmd GPIB command
     * @param cnt number of bytes in command
     * @param retCnt number of bytes sent
     * @return status of the operation
     */
    NativeLong viGpibCommand(NativeLong vi, ByteBuffer cmd, NativeLong cnt, NativeLongByReference retCnt);

    /**
     * Original signature : <code>ViStatus viGpibPassControl(ViSession, ViUInt16, ViUInt16)</code><br>
     * <i>native declaration : visa.h:282</i>
     *
     * @param vi handle for instrument session
     * @param primAddr primary GPIB address
     * @param secAddr secondary GPIB address
     * @return status of the operation
     */
    NativeLong viGpibPassControl(NativeLong vi, short primAddr, short secAddr);

    /**
     * Original signature : <code>ViStatus viVxiCommandQuery(ViSession, ViUInt16, ViUInt32, ViPUInt32)</code><br>
     * <i>native declaration : visa.h:284</i>
     *
     * @param vi handle for instrument session
     * @param mode query mode
     * @param cmd VXI command
     * @param response VXI response
     * @return status of the operation
     */
    NativeLong viVxiCommandQuery(NativeLong vi, short mode, NativeLong cmd, NativeLongByReference response);

    /**
     * Original signature : <code>ViStatus viAssertUtilSignal(ViSession, ViUInt16)</code><br>
     * <i>native declaration : visa.h:286</i>
     *
     * @param vi handle for instrument session
     * @param line signal line identifier
     * @return status of the operation
     */
    NativeLong viAssertUtilSignal(NativeLong vi, short line);

    /**
     * Original signature : <code>ViStatus viAssertIntrSignal(ViSession, ViInt16, ViUInt32)</code><br>
     * <i>native declaration : visa.h:287</i>
     *
     * @param vi handle for instrument session
     * @param mode signal identifier
     * @param statusID signal status
     * @return status of the operation
     */
    NativeLong viAssertIntrSignal(NativeLong vi, short mode, NativeLong statusID);

    /**
     * Original signature : <code>ViStatus viMapTrigger(ViSession, ViInt16, ViInt16, ViUInt16)</code><br>
     * <i>native declaration : visa.h:288</i>
     *
     * @param vi handle for instrument session
     * @param trigSrc trigger source
     * @param trigDest trigger destination
     * @param mode mapping mode
     * @return status of the operation
     */
    NativeLong viMapTrigger(NativeLong vi, short trigSrc, short trigDest, short mode);

    /**
     * Original signature : <code>ViStatus viUnmapTrigger(ViSession, ViInt16, ViInt16)</code><br>
     * <i>native declaration : visa.h:290</i>
     *
     * @param vi handle for instrument session
     * @param trigSrc trigger source
     * @param trigDest trigger destination
     * @return status of the operation
     */
    NativeLong viUnmapTrigger(NativeLong vi, short trigSrc, short trigDest);

    /**
     * Original signature : <code>ViStatus viUsbControlOut(ViSession, ViInt16, ViInt16, ViUInt16, ViUInt16, ViUInt16, ViBuf)</code><br>
     * <i>native declaration : visa.h:291</i>
     *
     * @param vi handle for instrument session
     * @param bmRequestType request type parameter of setup stage
     * @param bRequest request parameter of setup stage
     * @param wValue wValue parameter of setup stage
     * @param wIndex wIndex parameter of setup stage
     * @param wLength wLength parameter of setup stage
     * @param buf transmit buffer used by control transfer (if wLength &gt; 0)
     * @return status of the operation
     */
    NativeLong viUsbControlOut(NativeLong vi, short bmRequestType, short bRequest, short wValue, short wIndex, short wLength, ByteBuffer buf);

    /**
     * Original signature : <code>ViStatus viUsbControlIn(ViSession, ViInt16, ViInt16, ViUInt16, ViUInt16, ViUInt16, ViPBuf, ViPUInt16)</code><br>
     * <i>native declaration : visa.h:294</i>
     *
     * @param vi handle for instrument session
     * @param bmRequestType request type parameter of setup stage
     * @param bRequest request parameter of setup stage
     * @param wValue wValue parameter of setup stage
     * @param wIndex wIndex parameter of setup stage
     * @param wLength wLength parameter of setup stage
     * @param buf receive buffer used by control transfer (if wLength &gt; 0)
     * @param retCnt number of bytes received
     * @return status of the operation
     */
    NativeLong viUsbControlIn(NativeLong vi, short bmRequestType, short bRequest, short wValue, short wIndex, short wLength, ByteBuffer buf, ShortBuffer retCnt);

    /**
     * Original signature : <code>ViStatus viPxiReserveTriggers(ViSession, ViInt16, ViAInt16, ViAInt16, ViPInt16)</code><br>
     * <i>native declaration : visa.h:297</i>
     *
     * @param vi handle for instrument session
     * @param cnt number of triggers to reserve
     * @param trigBuses list of trigger buses
     * @param trigLines list of trigger lines
     * @param failureIndex failure index
     * @return status of the operation
     */
    NativeLong viPxiReserveTriggers(NativeLong vi, short cnt, ShortBuffer trigBuses, ShortBuffer trigLines, ShortBuffer failureIndex);

    public static class ViVAList extends PointerType {

        public ViVAList(Pointer address) {
            super(address);
        }

        public ViVAList() {
            super();
        }
    }

    ;

    public static class ViAUInt64 extends PointerType {

        public ViAUInt64(Pointer address) {
            super(address);
        }

        public ViAUInt64() {
            super();
        }
    }

    ;

    public static class ViBusAddress64 extends PointerType {

        public ViBusAddress64(Pointer address) {
            super(address);
        }

        public ViBusAddress64() {
            super();
        }
    }

    ;

    public static class ViPUInt64 extends PointerType {

        public ViPUInt64(Pointer address) {
            super(address);
        }

        public ViPUInt64() {
            super();
        }
    }

    ;

    public static class ViUInt64 extends PointerType {

        public ViUInt64(Pointer address) {
            super(address);
        }

        public ViUInt64() {
            super();
        }
    }

    ;

    public static class ViPBusAddress64 extends PointerType {

        public ViPBusAddress64(Pointer address) {
            super(address);
        }

        public ViPBusAddress64() {
            super();
        }
    }

    ;

    /*
    // This class was generatd by JNAerator, but I think it does not work. -PF 23 May 2020
    public static class ViHndlr extends PointerType {

        public ViHndlr(Pointer address) {
            super(address);
        }

        public ViHndlr() {
            super();
        }
    };
     */
}
